1. Field of the Invention
The present invention generally relates to external storage devices, and particularly relates to external storage device which is connected to a host computer and writes/reads data for an optical disk.
2. Description of the Prior Art
Keeping pace with a recent development of computers realizing a faster processing speed and a larger memory volume, external storage devices connected to these computers also have been subject to increases in the amount of their storage capacities. Among such, devices using an optical disk for reading/writing information are heeded as an external storage device of a significant amount of storage capacity. Hereinafter, the devices using an optical disk are called a CD-R device.
FIG. 1 shows a block diagram of a CD-R disk writing device 11 of the prior art. The CD-R disk writing device 11 includes a CD-R drive 12 and a host computer 20 which are connected with each other through a bus 19. The CD-R drive 12 carries out recording/reproducing processing for an optical disk, according to commands given by the host computer 20.
The CD-R drive 12 includes a recording/reproducing unit 13, a buffer 14, a special-purpose HDD (hard disk drive) 15, an I/F (interface) 16 and signal lines 17 and 18.
A structure and functions of the recording/reproducing unit 13 of the CD-R drive 12 will be described later in detail
The I/F 16 is a circuit for handling interface with the host computer 20. The special-purpose HDD 15 is used for temporarily storing data provided from the host computer 20. The buffer 14 has a predetermined amount of data capacity, and temporarily stores data provided from the special-purpose HDD 15.
The I/F 16, the special-purpose HDD 15, and the buffer 14 are connected through the signal lines 17, which are comprised of a data bus and control lines. The recording/reproducing unit 13 and the I/F 16 are connected through the signal lines 18, which are comprised of another data bus and control lines. The signal lines 18 are used for conveying commands given by the host computer 20.
The host computer 20 includes a HDD 21, a display 22, a CPU (central processing unit) block 23, an I/F 24 for handling interface with the CD-R drive 12, and an input device 25 such as a keyboard and the like.
The CPU block 23 has a CPU, ROM, and RAM, and, also, is provided with an interface circuit for the input device 25. The CPU block 23 and the I/F 24 are connected with each other through signal lines 26, which are comprised of a data bus and control lines.
The I/F 24 is connected with the I/F 16 of the CD-R drive 12 through signal lines 19, which are comprised of a data bus and control lines. Here, such a standard as SCSI (small computer system interface) may be used for the I/F 16 and the I/F 24.
A personal computer commonly used can serve as the host computer 20.
FIG. 2 shows another block diagram of the CD-R disk writing device 11 of FIG. 1 with a block diagram of the recording/reproducing unit 13.
With reference to FIG. 2, a data-recording operation of the CD-R drive 12 will be described below
The recording/reproducing unit 13 includes an optical disk 31, a spindle motor 32 for rotating the optical disk 31, and a pick-up 33 for recording/reproducing information by illuminating a laser beam on to a desired track of the optical disk 31. The recording/reproducing unit 13 further includes a pick-up shifting mechanism 34 for moving the pick-up 33 in a radial direction of the optical disk 31, and a head-amplifier 35 for converting signals reproduced by the pick-up 34 into signals of a predetermined level.
The recording/reproducing unit 13 further includes a servo circuit 36, an encoder 37, and a CPU 38. The servo circuit 36 generates a wobble servo signal for controlling the spindle motor 32, and controls a position of the pick-up 33. The encoder 37 modulates user data from the buffer 14 and subcode data and block header data from the CPU 38 by using an EFM (eight-to-fourteen modulation) in accordance with predetermined standards, and, then, supplies modulated data to the pick-up 33. The CPU 38 has ROM and RAM, a is connected with the I/F 16 through the signal lines 18.
Guiding grooves which can be optically detected are formed on a surface of the optical disk 31 along a track, and wobbling signals are recorded as a variation in a width of the guiding grooves.
The servo circuit 36 generates tracking signals and focusing signals based on the reproduced signals provided by the pick-up 33 through the head-amplifier 35, and provides these signals for the pick-up 33. Also, the servo circuit 36 generates the wobble servo signals, and provides it for the spindle motor 32. By using these signals, the pick-up 33 can follow a track on the optical disk 31, and the spindle motor 32 can rotate the optical disk 31 such that a linear velocity of the optical disk 31 with regard to the pickup 33 is kept constant. Here, a single track of a spiral shape is formed from an inner side to an outer side of the optical disk 31, and data is recorded on this track with a constant linear recording density.
When writing data, the CPU block 23 of the host computer 20 reads data from the HDD 21, and sends it to the CD-R drive 12. The CD-R drive 12 receives the data at the I/F 16, and stores it into the special-purpose HDD 15. Then, the data stored in the special-purpose HDD 15 is supplied to the buffer 14 according to an available storage volume of the buffer 14.
The reason why the special-purpose HDD is provided is because a data-transfer speed between the host computer 20 and the CD-R drive 12 differs from a data-recording speed of the recording/reproducing unit 13. Namely, the special-purpose HDD 15 serves as a buffer for matching a data-processing speed of the CD-R drive 12 with the data-transfer speed of the host computer 20. Unfortunately, a HDD device is a relatively bulky device comprised of disks, actuators, etc., contained in a sealed housing.
Accordingly, in the CD-R disk writing device 11 of the prior art, the necessity to provide the special-purpose HDD 15 inside the CD-R drive 12 leads to a problem that the CD-R drive 12 tends to become large and costly.
Also, maintenance of the special-purpose HDD 15 is necessary at the time of maintenance of the CD-R drive 12. Thus, at a time of maintenance before the CD-R disk writing devices are shipped out from a factory, the maintenance should be taken care of on the manufacture's side. When maintenance should be conducted by users, these users should take care of the special-purpose HDD inside the CD-R drive as well as the HDD inside the host computer, leading to a too much trouble.
In addition to the above-identified problems of the CD-R disk writing device of the prior art, another problem arises from a way of data processing in the CD-R disk writing device.
In order to clarify this problem, a recording format of the disk 31 will be described below with reference to the accompanying drawings.
FIGS. 3A through 3C show a structure of subcode frame. In the optical disk 31, data is recorded by a unit of 2352 bytes, which constitute a one block. This one block is called a subcode frame, which is in turn comprised of 98 frames. One frame includes 24 bytes of data.
When data of one frame is recorded, 1 byte of subcode data and 8 byte of parity are attached to the 24 bytes of data, and 33 bytes thus obtained are modulated by the EFM. Further, a frame synchronizing signal is added to the modulated data, thus providing one frame of 588 bits.
In the case of CD-DA (CD for music), one sampling data is 4 bytes comprised of a 2-byte L (left) signal and a 2 byte R (right) signal of an audio signal. A sampling frequency for the audio signal is 44.1. kHz, and one frame is 24 bytes as described above. Thus, a frequency of the frames is 44.1/(24/4)=7.35 kHz. This means that a period of one frame is 1/7350 second.
The subcode is data used for, for example, searching a start point of music pieces, and is comprised of 8 channels of P through W. Each bit of P through W channels is recorded in a subcode area which is an 8-bit area following the frame synchronizing signal. As shown in FIG. 3B, each of P through W channels is completed as one complete data set in 98 frames. That is, the subcode frame which is comprised of 98 frames includes one complete subcode.
First two bytes S0 and S1 of the subcode are a synchronizing signal for the subcode. The P channel of the subcode indicates a pausing period located at the start of a music piece. The pausing period is indicated by "1" of the P channel, and "0" indicates otherwise.
FIG. 3C shows a frame structure of the Q channel of the subcode. A control signal located at 4-bit area following a S1 bit is used for indicating the number of transfer channels, whether there is an emphasis or not, and whether data is digital or not. An address signal following the control signal is usually predetermined fixed value "0001".
A music-piece number following the address signal indicates an ordinal number of the music piece in a series of music pieces stored in the optical disk. An index indicates a portion within the music piece. An absolute time indicate a total time length lapsed from start of data area of the optical disk 31. As describe above, one subcode frame is comprised of 98 frames, and thus, has a length of 1/75 second (98/7350 second). A frame number in the absolute time takes values ranging from 0 to 74, increasing from 0 to 74 to return to 0 again. Thus, the frame number indicates fractions of one seconds by step increases of 1/75 second.
A relative time indicates a time length lapsed from a start of the music piece. As same as the absolute time, the relative time is comprises of the minute, the second, and a frame number. The relative time is decreased during the pausing period from 2 seconds to 0 second.
At the end of the Q channel is attached 16 bits of error detection codes CRCC (cyclic redundancy check code).
FIG. 4 shows an example in which three music pieces are recorded on the optical disk 31. The absolute time monotonously increases from the start of the data area (end of a read-in period) to the end of a read-out period. The relative time decreases from 2 seconds to 0 second during the pausing period of each music piece, and increases from the start of the music piece toward the end.
TOC (table of content) is recorded in a read-in period as information for a search. The TOC records a start time of each music piece, the music-piece number of the first music piece, the music-piece number of the last music piece, and a start time of the read-out period.
FIGS. 5A and 5B show an illustrative drawing for explaining a signal format of a CD-ROM. As described above, 2352 bytes of data are recorded in one subcode frame (98 frames). As shown in FIG. 5A, 294 samples of an audio signal, each of which is comprised of a 2-byte L signal and a 2-byte R signal, are recorded in one subcode frame.
As shown in FIG. 5B, 2352-byte data within one subcode frame is treated as one block in the CD-ROM. In a mode 1 of the CD-ROM, one block is comprised of 12 bytes of a synchronizing signal, 4 bytes of a header, 2048 bytes of user data, and 288 bytes of error correction codes ECC. Hereinafter, the synchronizing signal, the header, and the error correction codes ECC are collectively called a block header.
The header includes a block address comprised of the minute, the second, and the block, and, also, includes a mode signal. The block address is identical to the absolute address provided in the Q channel of the subcode.
With reference to the data formats described above, a data-writing operation of the CD-R disk writing device 11 of the prior art will be described below.
The CPU block 23 of the host computer 20 creates a Q sheet indicating an arrangement in which data is to be written into the optical disk 31. The creation of the Q sheet is done prior to the writing of the data, and held by the CPU block 23.
FIG. 6 shows an example of the Q sheet in the case that there are three music pieces to be written into the optical disk 31. As shown in FIG. 6, the Q sheet includes a start time of each music piece, a music-piece number of the first music piece, a music-piece number of the last music piece, a start time of the read-out period, and a start time of the indexes of each music piece. Although not shown in the figure, the control signal and the address signal in the Q channel on the subcode are also recorded in the Q sheet. Here, if data of a different format is to be recorded on the optical disk 31, the Q sheet also includes a time at which the control signal is switched.
The Q sheet is transferred from the CPU block 23 of the host computer 20 to the CPU 38 of the CD-R drive 12 via the I/F 24 and the I/F 16. The CPU 38 retains the Q sheet thus provided.
After the Q sheet is transferred, the CPU block 23 of the host computer 20 issues a command to the CD-R drive 12, requesting that a requested number of blocks of data be written into the optical disk 31 at a requested location. This command is supplied to the CPU 38 of the CD-R drive 12 via the I/Fs 24 and 16.
Upon receiving the command for writing data, the CPU 38 directs the servo circuit 36 to control the pick-up 33 to be moved to the requested location. The wobbling signal recorded in advance on the optical disk 31 includes ATIP data which is time information indicating positions on the optical disk 31. The servo circuit 36 can control the pick-up 33 to be moved to the requested location based on the ATIP data.
The ATIP data is also supplied to the CPU 38 via the servo circuit 36. Based on the ATIP data, the CPU 38 can get information about the absolute time indicating a location of a frame which the pick-up 33 is currently tracing. The CPU 38 provides the encoder 37 with a synchronizing signal extracted from the ATIP data.
Just prior to completion of the seek operation, the CPU 38 sends a seek-end signal to the host computer 20 via the I/F 16.
Upon receiving the seek-end signal, the CPU block 23 of the host computer 20 reads user data from the HDD 21, and sends it to the CD-R drive 12 via the I/F 24. The user data transferred to the CD-R drive 12 is stored into the buffer 14.
When the user data is transferred, an amount of data commensurate to an available storage space within the buffer 14 is transferred by a unit of a block.
Upon the completion of the seek operation, the CPU 38 of the CD-R drive 12 gives an instruction to the encoder 37 to start writing the user data.
The encoder 37, in response to this instruction, modulates the user data read from the buffer 14, and, also, modulates subcode data and a block header provided from the CPU 38. Modulated data thus generated is provided for the pick-up 33 to be written into the track on the optical disk 31.
Here, an operation of the CPU 38 and the operation of the encoder 37 are as follows. The CPU 38 is holding the subcode and the block header (for CD-ROM only) for a block to be written, which are created based on the Q sheet. By using the ATIP data from the servo circuit 36, the CPU 38 supplies 8 bits of the subcode data to the encoder 37 when the pick-up 33 comes to a point in a frame where the subcode data should be written. Also, by using the ATIP data from the servo circuit 36, the CPU 38 supplies the block header to the encoder 37 when the pick-up 33 comes to a point in a frame where the block header should be written.
In short, the CPU 38 generates the subcode data and the block header for each block, and provides them for the encoder 37 at the right timing.
When the subcode data or the block header is supplied by the CPU 34, the encoder 37 modulates the subcode data or the block header whichever supplied to generate the modulated data. This modulated data is then supplied to the pick-up 33. When neither the subcode data or the block header is supplied, the encoder 37 modulates the user data read from the buffer 14 to generate the modulated data. This modulated data is then supplied to the pick-up 33.
In this manner, the requested number of blocks of data are written into the optical disk 31 at the requested position.
As described above, in the CD-R disk writing device 11 of the prior art, the CPU 38 of the CD-R drive 12 generates the subcode data and the block header in realtime, and supplies them to the encoder 37. In order to perform this processing, the CPU 38 needs to carry out complex processes. As a result, the memory volume of the ROM and the RAM required for the operation of the CPU 38 becomes large. This creates a problem that a cost of the CD-R drive 12 becomes high.
Also, when the disk-format of the optical disk 31 (e.g, CD-DA, CD-ROM mode 1, CD-ROM mode 2, etc.) is changed, the processing of the CPU 38 with regard to the generation and supply of the subcode data and the block header should also be changed. Thus, a change in the disk format requires a change in contents of the ROM of the CPU 38. This means that there should be changes in specifications of the CD-R drive 12.
Accordingly, there is a need in the field of CD-R disk writing devices for a CD-R disk writing device which is miniaturized and requires simpler maintenance by disposing of the special-purpose HDD installed inside the device.
Also, there is a need in the field of CD-R disk writing devices for a CD-R disk writing device which can reduce the process load on the CD-R drive, can lower the cost, and can be applicable to various disk formats without changing the specifications of the device.